package sv.gob.mh.dgii.model;

// Generated Jun 4, 2008 1:49:27 PM by Hibernate Tools 3.2.0.CR1

import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;

/**
 * CgCoordinacion generated by hbm2java
 */
@Entity
@Table(name = "CG_COORDINACION", schema = "UPET")
public class CgCoordinacion implements java.io.Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 7891431789826541852L;
	
	private String ccoordinacion;
	private TbUnidad tbUnidad;
	private CgTecnico cgTecnico;
	private String dcoordinacion;
	private Integer bactiva;
	private Set<CgGrupoTrab> cgGrupoTrabs = new HashSet<CgGrupoTrab>(0);

	public CgCoordinacion() {
	}

	public CgCoordinacion(String ccoordinacion, TbUnidad tbUnidad,
			CgTecnico cgTecnico, String dcoordinacion) {
		this.ccoordinacion = ccoordinacion;
		this.tbUnidad = tbUnidad;
		this.cgTecnico = cgTecnico;
		this.dcoordinacion = dcoordinacion;
	}

	public CgCoordinacion(String ccoordinacion, TbUnidad tbUnidad,
			CgTecnico cgTecnico, String dcoordinacion,
			Integer bactiva,
			Set<CgGrupoTrab> cgGrupoTrabs) {
		this.ccoordinacion = ccoordinacion;
		this.tbUnidad = tbUnidad;
		this.cgTecnico = cgTecnico;
		this.dcoordinacion = dcoordinacion;
		this.bactiva = bactiva;
		this.cgGrupoTrabs = cgGrupoTrabs;
	}

	@Id
	@Column(name = "C_COORDINACION", unique = true, nullable = false, length = 2)
	public String getCcoordinacion() {
		return this.ccoordinacion;
	}

	public void setCcoordinacion(String ccoordinacion) {
		this.ccoordinacion = ccoordinacion;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "C_UNIDAD", nullable = false)
	public TbUnidad getTbUnidad() {
		return this.tbUnidad;
	}

	public void setTbUnidad(TbUnidad tbUnidad) {
		this.tbUnidad = tbUnidad;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "NIT_COORDINADOR", nullable = false)
	public CgTecnico getCgTecnico() {
		return this.cgTecnico;
	}

	public void setCgTecnico(CgTecnico cgTecnico) {
		this.cgTecnico = cgTecnico;
	}

	@Column(name = "D_COORDINACION", nullable = false, length = 60)
	public String getDcoordinacion() {
		return this.dcoordinacion;
	}

	public void setDcoordinacion(String dcoordinacion) {
		this.dcoordinacion = dcoordinacion;
	}

	@Column(name = "B_ACTIVA", unique = false, nullable = false, insertable = true, updatable = true, precision = 1, scale = 0)
	public Integer getBactiva() {
		return bactiva;
	}

	public void setBactiva(Integer bactiva) {
		this.bactiva = bactiva;
	}

	@OneToMany(cascade = {CascadeType.PERSIST, CascadeType.MERGE}, fetch = FetchType.LAZY, mappedBy = "cgCoordinacion")
	public Set<CgGrupoTrab> getCgGrupoTrabs() {
		return this.cgGrupoTrabs;
	}

	public void setCgGrupoTrabs(Set<CgGrupoTrab> cgGrupoTrabs) {
		this.cgGrupoTrabs = cgGrupoTrabs;
	}

}
